package com.wish.g1.house.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * 房源表
 * </p>
 *
 * @author mayingchao
 * @since 2022-11-18
 */
@Data
@TableName("tb_house")
@Document(indexName = "wish_house")
public class House implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 房源id
     */
    @Id
    @Field(type = FieldType.Keyword,name = "id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 名称
     */
    @Field(type = FieldType.Text)
    private String houseName;

    /**
     * 楼盘id
     */
    private Long housingId;

    /**
     * 楼盘名称
     */
    private String housingName;

    /**
     * 租赁方式，1-整租，2-合租
     */
    private Integer rentMethod;

    /**
     * 房源状态,   0-已出租 ,1-未出租
     */
    private String houseStatus;

    /**
     * 楼号（栋）
     */
    private String buildingNum;

    /**
     * 单元号
     */
    private String buildingUnit;

    /**
     * 门牌号
     */
    private String buildingFloorNum;

    /**
     * 户型，如：2室1厅1卫
     */
    private String houseType;

    /**
     * 装修，1-精装，2-简装，3-毛坯
     */
    private Integer decoration;

    /**
     * 楼层，如：8/26
     */
    private String floor;

    /**
     * 租金
     */
    private BigDecimal rent;

    /**
     * 付款方式，1-付一押一，2-付三押一，3-付六押一，4-年付押一，5-其它
     */
    private Integer paymentMethod;

    /**
     * 房产面积
     */
    private String coveredArea;

    /**
     * 朝向：东、南、西、北
     */
    private String orientation;

    /**
     * 房间区域图片
     */
    private String roomPic;

    /**
     * 公共区域图片
     */
    private String areaPic;

    /**
     * 联系人
     */
    private String contact;

    /**
     * 手机号
     */
    private String mobile;

    /**
     * 看房时间，1-上午，2-中午，3-下午，4-晚上，5-全天
     */
    private Integer time;

    /**
     * 房源创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date createdTime;

    /**
     * 房源更改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date updatedTime;

    /**
     * 用户id
     */
    private Integer userId;

    /**
     * 省id
     */
    private Integer pid;

    /**
     * 市id
     */
    private Integer sid;

    /**
     * 县id
     */
    private Integer xid;

    /**
     * 详细地址
     */
    private String address;

    /**
     * 房源标签类型(分散式  集中式)
     */
    private String labelType;

    /**
     * 房东id
     */
    private Integer landlordId;

    /**
     * 房源介绍
     */
    private String houseDesc;

    /**
     * 发布状态  0已发布  1未发布
     */
    private Integer publishStatus;

    /**
     * 创建人
     */
    private String createBy;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date createTime;

    /**
     * 更新者
     */
    private String updateBy;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date updateTime;


    public void setCreateTime(Date nowDate) {
    }

    public void setUpdateTime(Date nowDate) {
    }
}
